package com.itboye.hutouben.interfaces;

/**
 * Created by admin on 2016/11/28.
 */

public interface IUserInfoInterface<PersonDataBean> {
    /**
     * 用户登录（账户密码）
     * @param username
     * @param pwd
     */
    void login(String username,String pwd);
    //自动登录
    void loginZiDong(String uid,String auto_login_code);

    /**
     * 用户注册
     * @param username
     * @param pwd
     * @param country
     * @param code
     * @param from    注册来源[必须](0:系统)
     * @param idcode  邀请码,可选
     */
    void register(String username,String pwd,String country,String code,String from,String idcode);

    /**
     * 发送验证码
     * @param country +86
     * @param mobile
     * @param code_type
     */
    void sendVerificationCode(String country,String mobile,String code_type);

    /**
     * 验证验证码
     * @param country
     * @param mobile
     * @param code
     * @param code_type
     */
    void YanZhengverificationCode(String country,String mobile,String code,String code_type);

    /**
     * 查询用户收货地址
     * @param s_id      会话id[必须](登陆时保存的auth_login_code)
     * @param uid
     */
    void queryAddress(String s_id,String uid);

    /**
     * 删除收货地址
     * @param uid
     * @param id
     */
    void deleteAddress(String s_id,String uid,String id);

    /**
     * 获取默认收货地址
     * @param uid
     */
    void getMoRenAddress(String s_id,String uid);

    /**
     * 修改密码（手机号+验证码）
     * @param country   国家[必须]
     * @param code      验证码[必须](itboye是万能验证码，测试其它请调用验证码接口获取)
     * @param mobile    手机号
     * @param password  新密码[必须]（6-32位）
     */
    void updatePass(String country,String code,String mobile,String password);

    /**
     * 修改个人信息
     * @param uid
     * @param types      (nickname:昵称;  sex:性别(0,1); sign:个性签名; email:邮箱； weixin：微信； company：公司； job_title：岗位；loc_country：所在国家编码； loc_area：地区)
     * @param content
     */
    void upadtaInformation(String uid,String types,String content);

    /**
     * 修改密码（通过旧密码）
     * @param uid
     * @param password
     * @param new_password
     */
    void modifyPass(String uid,String password,String new_password);


    /**
     * 添加收货地址
     * @param uid
     * @param contactname   联系人
     * @param mobile        手机号
     * @param postal_code   邮编
     * @param province      省份
     * @param city           城市
     * @param area            街道
     * @param detailinfo    详细地址
     * @param defaults      是否默认
     * @param country
     * @param country_id
     */
    void addressAdd(String s_id,String uid,String contactname,String mobile,String postal_code,String province,String city,String area,String detailinfo,String defaults,String country,String country_id);

    /**
     * 收货地址更新
     * @param id
     * @param uid
     * @param contactname
     * @param mobile
     * @param postal_code
     * @param province
     * @param city
     * @param area
     * @param detailinfo
     * @param defaults
     * @param country
     * @param country_id
     */
    void updateAddress(String s_id,String id,String uid,String contactname,String mobile,String postal_code,String province,String city,String area,String detailinfo,String defaults,String country,String country_id);

    /**
     * 司机认证申请
     * @param uid
     * @param id_number     身份证号
     * @param realname      真实姓名
     * @param id_certs      身份证图片id,多个英文逗号分割
     * @param driver_cert   行驶证图片id,暂一张
     */
    void sijiRenZheng(String uid,String id_number,String realname,String id_certs,String driver_cert);

    /**
     * 批量添加商品
     * @param uid
     * @param id
     * @param sku_pkid
     * @param count
     */
    void addMallAll(String uid, String id, String sku_pkid, String count);

    /**
     * 版本更新
     * @param app_type
     */
    void banbenUpdate(String app_type);

    /**
     * 获取全局配置
     */
    void getConfigApp();

    void updatePwdByPwd(String uid,String oldPass,String newPass);
}
